### This script creates bootstrapped modes and medians from the CHES Data 1999-2010
### Script writes out "CHES_Bootstrap_1999_2010_modes.Rdata" and "CHES_Bootstrap_1999_2010_medians.Rdata"
### Directory set and libraries loaded in script 1
### Last updated 06 Sept 2018

set.seed(1234)

rm(list=ls())

load('CHESData_clean.Rdata')

source('Functions_Mode_Agree_Boot.R')

## Set number of simulations
nsims <-100

### Bootstrap Modes

########################
# EU Position 1999 data
########################

dta1999partylabs<-unique(dta1999[,c("partyname","party.")])

boot.position.1999 <- bootexperts(dim=dta1999$q1,paste(dta1999$country,dta1999$countryname,dta1999$party.,sep=","),nsims=nsims)

boot.position.1999 <- cbind(str_split_fixed(as.character(rownames(boot.position.1999)),",",3),boot.position.1999)

names(boot.position.1999)

colnames(boot.position.1999)[1:3]<-c("country","countryname","partyid")
#head(boot.position.1999)

boot.position.1999 <- merge(boot.position.1999,dta1999partylabs,
	by.x="partyid",
	by.y="party.",
	all.y=T)

boot.position.1999$year <- 1999

boot.position.1999 <- boot.position.1999[,c(1,2,3,nsims+4,nsims+5,4:(nsims+3))]

boot.position.1999$partyid<-as.vector(boot.position.1999$partyid)

boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="AGA"]<-105
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="CVP"]<-109

boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="ECO"]<-104
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="FDF"]<-111
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="FN"]<-115

boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="ID21"]<-114
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="MCC"]<-113
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="PRL"]<-106
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="PS"]<-102
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="PSC"]<-108
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="SP"]<-103
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="VB"]<-112
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="VLD"]<-107
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="VU"]<-110

boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="CD"]<-1009
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="CDA"]<-1001
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="D'66"]<-1004
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="PvdA"]<-1002
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="VVD"]<-1003
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="GL"]<-1005

boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="SGP"]<-1006

boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="GPV"]<-1007
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="RPF"]<-1008
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="SP"]<-1014

boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="SD"]<-201
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="RV"]<-202
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="KF"]<-203
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="CD"]<-204
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="SF"]<-206

boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="KrF"]<-210
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="V"]<-211

boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="FrP"]<-212#

boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="E"]<-213#

boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="DF"]<-215
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="JuniB"]<-216
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="FolkB"]<-217

boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="CDU"]<-301
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="SPD"]<-302
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="FDP"]<-303
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="G"]<-304
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="REP"]<-305
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="PDS"]<-306
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="CSU"]<-308
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="DVU"]<-309

boot.position.1999$partyid[boot.position.1999$countryname=="Greece"&boot.position.1999$partyname=="PASOK"]<-401
boot.position.1999$partyid[boot.position.1999$countryname=="Greece"&boot.position.1999$partyname=="ND"]<-402
boot.position.1999$partyid[boot.position.1999$countryname=="Greece"&boot.position.1999$partyname=="SYN"]<-403
boot.position.1999$partyid[boot.position.1999$countryname=="Greece"&boot.position.1999$partyname=="KKE"]<-404
boot.position.1999$partyid[boot.position.1999$countryname=="Greece"&boot.position.1999$partyname=="POLA"]<-408
boot.position.1999$partyid[boot.position.1999$countryname=="Greece"&boot.position.1999$partyname=="DIKKI"]<-409

boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="PSOE"]<-501
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="PP"]<-502
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="IU"]<-504
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="CIU"]<-505#
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="PNV"]<-506
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="EA"]<-507
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="EH"]<-508
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="PAR"]<-510
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="ERC"]<-511
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="UV"]<-512
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="BNG"]<-513
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="V"]<-514#
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="CC"]<-517
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="IC"]<-518
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="PSC"]<-519

boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="PC"]<-601
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="PS"]<-602
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="PRG"]<-603
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="V"]<-605
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="RPR"]<-609
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="FN"]<-610
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="RPF"]<-612
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="UDF"]<-613
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="LO-LCR"]<-614
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="DL"]<-615
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="MEI"]<-617
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="D"]<-618
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="CPNT"]<-619
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="MN"]<-620

boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="FF"]<-701
boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="FG"]<-702
boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="LAB"]<-703
boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="GR"]<-705
boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="PD"]<-706
boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="SF"]<-707
boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="SP"]<-710

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="PDS"]<-802
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="RC"]<-803
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="AN"]<-805
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="PRI"]<-806
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="SDI"]<-807
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="V"]<-808
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="LN"]<-811
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="CCD"]<-814
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="FI"]<-815
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="UD"]<-817

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="CDU"]<-818

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="DEM"]<-819
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="LB"]<-820
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="MS"]<-821
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="PdUP"]<-822

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="PPI"]<-823

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="PsDA"]<-824

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="RI"]<-825

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="SEG"]<-826

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="SVP"]<-827

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="PdCI"]<-836


boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="CON"]<-1101
boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="LAB"]<-1102
boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="LD"]<-1104
boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="SNP"]<-1105
boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="PC"]<-1106

boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="GP"]<-1107

boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="UKIP"]<-1108

boot.position.1999$partyid[boot.position.1999$countryname=="Portugal"&boot.position.1999$partyname=="CDU"]<-1201
boot.position.1999$partyid[boot.position.1999$countryname=="Portugal"&boot.position.1999$partyname=="CDS-PP"]<-1201

boot.position.1999$partyid[boot.position.1999$countryname=="Portugal"&boot.position.1999$partyname=="PS"]<-1205
boot.position.1999$partyid[boot.position.1999$countryname=="Portugal"&boot.position.1999$partyname=="PPD/PSD"]<-1206

boot.position.1999$partyid[boot.position.1999$countryname=="Portugal"&boot.position.1999$partyname=="BE"]<-1208


boot.position.1999$partyid[boot.position.1999$countryname=="Austria"&boot.position.1999$partyname=="OVP"]<-1302
boot.position.1999$partyid[boot.position.1999$countryname=="Austria"&boot.position.1999$partyname=="SPO"]<-1301
boot.position.1999$partyid[boot.position.1999$countryname=="Austria"&boot.position.1999$partyname=="FPO"]<-1303
boot.position.1999$partyid[boot.position.1999$countryname=="Austria"&boot.position.1999$partyname=="GAL"]<-1304
boot.position.1999$partyid[boot.position.1999$countryname=="Austria"&boot.position.1999$partyname=="LIF"]<-1306

boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="SDP"]<-1401
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="EKA"]<-1411
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="KESK"]<-1403
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="KIPU"]<-1413
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="KOK"]<-1402
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="PS"]<-1405
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="REM"]<-1412
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="RKP/SFP"]<-1406
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="SKL"]<-1409

boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="VAS"]<-1404
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="VIHR"]<-1408

boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="C"]<-1603
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="FP"]<-1604
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="KD"]<-1606
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="M"]<-1605
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="MP"]<-1607
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="ND"]<-1608
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="SAP"]<-1602
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="V"]<-1601



########################
# EU Position 2002 data
########################


dta2002partylabs<-unique(dta2002[,c("party_na","party_.")])

boot.position.2002 <- bootexperts(dim=dta2002$q1,paste(dta2002$country,dta2002$countryname,dta2002$party_.,sep=","),nsims=nsims)
#head(boot.position.2002)

boot.position.2002 <- cbind(str_split_fixed(as.character(rownames(boot.position.2002)),",",3),boot.position.2002)

names(boot.position.2002)

colnames(boot.position.2002)[1:3]<-c("country","countryname","partyid")
#head(boot.position.2002)

boot.position.2002 <- merge(boot.position.2002,dta2002partylabs,
	by.x="partyid",
	by.y="party_.",
	all.y=T)

boot.position.2002$year <- 2002


boot.position.2002 <- boot.position.2002[,c(1,2,3,nsims+4,nsims+5,4:(nsims+3))]
boot.position.2002$partyid<-as.vector(boot.position.2002$partyid)
boot.position.2002$partyid[boot.position.2002$party_na=="FN"]<-610 # fix FN party id

#head(boot.position.2002)

########################
# EU Position 2006 data
########################


dta2006partylabs<-unique(dta2006[,c("party","party_id")])

boot.position.2006 <- bootexperts(dim=dta2006$Q1,paste(dta2006$country_id,dta2006$countryname,dta2006$party_id,sep=","),nsims=nsims)
#head(boot.position.2006)

boot.position.2006 <- cbind(str_split_fixed(as.character(rownames(boot.position.2006)),",",3),boot.position.2006)

names(boot.position.2006)

colnames(boot.position.2006)[1:3]<-c("country","countryname","partyid")
#head(boot.position.2006)

boot.position.2006 <- merge(boot.position.2006,dta2006partylabs,
	by.x="partyid",
	by.y="party_id",
	all.y=T)

boot.position.2006$year <- 2006


boot.position.2006 <- boot.position.2006[,c(1,2,3,nsims+4,nsims+5,4:(nsims+3))]


#head(boot.position.2006)


########################
# EU Position 2010 data
########################


dta2010partylabs<-unique(dta2010[,c("party_name","party_id")])


boot.position.2010 <- bootexperts(dim=dta2010$position,paste(dta2010$country,dta2010$countryname,dta2010$party_id,sep=","),nsims=nsims)
#head(boot.position.2010)

boot.position.2010 <- cbind(str_split_fixed(as.character(rownames(boot.position.2010)),",",3),boot.position.2010)

names(boot.position.2010)

colnames(boot.position.2010)[1:3]<-c("country","countryname","partyid")
#head(boot.position.2010)

boot.position.2010 <- merge(boot.position.2010,dta2010partylabs,
	by.x="partyid",
	by.y="party_id",
	all.y=T)

boot.position.2010$year <- 2010


boot.position.2010 <- boot.position.2010[,c(1,2,3,nsims+4,nsims+5,4:(nsims+3))]


#head(boot.position.2010)



###### 
# Combine different years into one file
######

names(boot.position.1999)[4] <- "party_name"
names(boot.position.2002)[4] <- "party_name"
names(boot.position.2006)[4] <- "party_name"
names(boot.position.2010)[4] <- "party_name"

final <- rbind(boot.position.1999, boot.position.2002, boot.position.2006, boot.position.2010)

names(final)

#head(final)

# sort
final <- final[order(final$partyid,final$partyid),] 
#head(final)

final <- final[final$countryname!="NA",]

dim(final)
# Merge with trend file

chestrend<-read.dta("1999-2010_CHES_dataset_means.dta" ,  warn.missing.labels = F)
dim(chestrend)

chestrend <- merge(chestrend,final,
	by.x=c("party_id","year"),by.y=c("partyid","year"),all.x=TRUE)

chestrend <- chestrend[!is.na(chestrend$V1),]

final$partyid<-as.numeric(final$partyid)

save(final,file="CHES_Bootstrap_1999_2010_modes.Rdata")


##### bootstrap medians
rm(list=ls())

load("CHESData_clean.Rdata")

source("Functions_Mode_Agree_Boot.R")

## Set number of simulations
nsims <-100

########################
# EU Position 1999 data
########################

dta1999partylabs<-unique(dta1999[,c("partyname","party.")])

boot.position.1999 <- bootexperts(dim=dta1999$q1,paste(dta1999$country,dta1999$countryname,dta1999$party.,sep=","),nsims=nsims,mode=F)

boot.position.1999 <- cbind(str_split_fixed(as.character(rownames(boot.position.1999)),",",3),boot.position.1999)

names(boot.position.1999)

colnames(boot.position.1999)[1:3]<-c("country","countryname","partyid")
#head(boot.position.1999)

boot.position.1999 <- merge(boot.position.1999,dta1999partylabs,
	by.x="partyid",
	by.y="party.",
	all.y=T)

boot.position.1999$year <- 1999

boot.position.1999 <- boot.position.1999[,c(1,2,3,nsims+4,nsims+5,4:(nsims+3))]

boot.position.1999$partyid<-as.vector(boot.position.1999$partyid)

boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="AGA"]<-105
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="CVP"]<-109

boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="ECO"]<-104
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="FDF"]<-111
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="FN"]<-115

boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="ID21"]<-114
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="MCC"]<-113
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="PRL"]<-106
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="PS"]<-102
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="PSC"]<-108
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="SP"]<-103
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="VB"]<-112
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="VLD"]<-107
boot.position.1999$partyid[boot.position.1999$countryname=="Belgium"&boot.position.1999$partyname=="VU"]<-110

boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="CD"]<-1009
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="CDA"]<-1001
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="D'66"]<-1004
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="PvdA"]<-1002
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="VVD"]<-1003
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="GL"]<-1005

boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="SGP"]<-1006

boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="GPV"]<-1007
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="RPF"]<-1008
boot.position.1999$partyid[boot.position.1999$countryname=="Netherlands"&boot.position.1999$partyname=="SP"]<-1014

boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="SD"]<-201
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="RV"]<-202
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="KF"]<-203
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="CD"]<-204
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="SF"]<-206

boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="KrF"]<-210
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="V"]<-211

boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="FrP"]<-212#

boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="E"]<-213#

boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="DF"]<-215
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="JuniB"]<-216
boot.position.1999$partyid[boot.position.1999$countryname=="Denmark"&boot.position.1999$partyname=="FolkB"]<-217

boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="CDU"]<-301
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="SPD"]<-302
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="FDP"]<-303
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="G"]<-304
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="REP"]<-305
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="PDS"]<-306
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="CSU"]<-308
boot.position.1999$partyid[boot.position.1999$countryname=="Germany"&boot.position.1999$partyname=="DVU"]<-309

boot.position.1999$partyid[boot.position.1999$countryname=="Greece"&boot.position.1999$partyname=="PASOK"]<-401
boot.position.1999$partyid[boot.position.1999$countryname=="Greece"&boot.position.1999$partyname=="ND"]<-402
boot.position.1999$partyid[boot.position.1999$countryname=="Greece"&boot.position.1999$partyname=="SYN"]<-403
boot.position.1999$partyid[boot.position.1999$countryname=="Greece"&boot.position.1999$partyname=="KKE"]<-404
boot.position.1999$partyid[boot.position.1999$countryname=="Greece"&boot.position.1999$partyname=="POLA"]<-408
boot.position.1999$partyid[boot.position.1999$countryname=="Greece"&boot.position.1999$partyname=="DIKKI"]<-409

boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="PSOE"]<-501
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="PP"]<-502
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="IU"]<-504
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="CIU"]<-505#
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="PNV"]<-506
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="EA"]<-507
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="EH"]<-508
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="PAR"]<-510
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="ERC"]<-511
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="UV"]<-512
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="BNG"]<-513
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="V"]<-514#
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="CC"]<-517
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="IC"]<-518
boot.position.1999$partyid[boot.position.1999$countryname=="Spain"&boot.position.1999$partyname=="PSC"]<-519

boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="PC"]<-601
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="PS"]<-602
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="PRG"]<-603
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="V"]<-605
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="RPR"]<-609
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="FN"]<-610
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="RPF"]<-612
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="UDF"]<-613
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="LO-LCR"]<-614
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="DL"]<-615
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="MEI"]<-617
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="D"]<-618
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="CPNT"]<-619
boot.position.1999$partyid[boot.position.1999$countryname=="France"&boot.position.1999$partyname=="MN"]<-620

boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="FF"]<-701
boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="FG"]<-702
boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="LAB"]<-703
boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="GR"]<-705
boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="PD"]<-706
boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="SF"]<-707
boot.position.1999$partyid[boot.position.1999$countryname=="Ireland"&boot.position.1999$partyname=="SP"]<-710

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="PDS"]<-802
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="RC"]<-803
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="AN"]<-805
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="PRI"]<-806
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="SDI"]<-807
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="V"]<-808
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="LN"]<-811
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="CCD"]<-814
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="FI"]<-815
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="UD"]<-817

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="CDU"]<-818

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="DEM"]<-819
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="LB"]<-820
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="MS"]<-821
boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="PdUP"]<-822

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="PPI"]<-823

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="PsDA"]<-824

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="RI"]<-825

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="SEG"]<-826

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="SVP"]<-827

boot.position.1999$partyid[boot.position.1999$countryname=="Italy"&boot.position.1999$partyname=="PdCI"]<-836


boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="CON"]<-1101
boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="LAB"]<-1102
boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="LD"]<-1104
boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="SNP"]<-1105
boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="PC"]<-1106

boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="GP"]<-1107

boot.position.1999$partyid[boot.position.1999$countryname=="United Kingdom"&boot.position.1999$partyname=="UKIP"]<-1108

boot.position.1999$partyid[boot.position.1999$countryname=="Portugal"&boot.position.1999$partyname=="CDU"]<-1201
boot.position.1999$partyid[boot.position.1999$countryname=="Portugal"&boot.position.1999$partyname=="CDS-PP"]<-1201

boot.position.1999$partyid[boot.position.1999$countryname=="Portugal"&boot.position.1999$partyname=="PS"]<-1205
boot.position.1999$partyid[boot.position.1999$countryname=="Portugal"&boot.position.1999$partyname=="PPD/PSD"]<-1206

boot.position.1999$partyid[boot.position.1999$countryname=="Portugal"&boot.position.1999$partyname=="BE"]<-1208


boot.position.1999$partyid[boot.position.1999$countryname=="Austria"&boot.position.1999$partyname=="OVP"]<-1302
boot.position.1999$partyid[boot.position.1999$countryname=="Austria"&boot.position.1999$partyname=="SPO"]<-1301
boot.position.1999$partyid[boot.position.1999$countryname=="Austria"&boot.position.1999$partyname=="FPO"]<-1303
boot.position.1999$partyid[boot.position.1999$countryname=="Austria"&boot.position.1999$partyname=="GAL"]<-1304
boot.position.1999$partyid[boot.position.1999$countryname=="Austria"&boot.position.1999$partyname=="LIF"]<-1306

boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="SDP"]<-1401
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="EKA"]<-1411
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="KESK"]<-1403
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="KIPU"]<-1413
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="KOK"]<-1402
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="PS"]<-1405
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="REM"]<-1412
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="RKP/SFP"]<-1406
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="SKL"]<-1409

boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="VAS"]<-1404
boot.position.1999$partyid[boot.position.1999$countryname=="Finland"&boot.position.1999$partyname=="VIHR"]<-1408

boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="C"]<-1603
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="FP"]<-1604
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="KD"]<-1606
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="M"]<-1605
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="MP"]<-1607
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="ND"]<-1608
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="SAP"]<-1602
boot.position.1999$partyid[boot.position.1999$countryname=="Sweden"&boot.position.1999$partyname=="V"]<-1601


#head(boot.position.1999)


########################
# EU Position 2002 data
########################


dta2002partylabs<-unique(dta2002[,c("party_na","party_.")])

boot.position.2002 <- bootexperts(dim=dta2002$q1,paste(dta2002$country,dta2002$countryname,dta2002$party_.,sep=","),nsims=nsims,mode=F)
#head(boot.position.2002)

boot.position.2002 <- cbind(str_split_fixed(as.character(rownames(boot.position.2002)),",",3),boot.position.2002)

names(boot.position.2002)

colnames(boot.position.2002)[1:3]<-c("country","countryname","partyid")
#head(boot.position.2002)

boot.position.2002 <- merge(boot.position.2002,dta2002partylabs,
	by.x="partyid",
	by.y="party_.",
	all.y=T)

boot.position.2002$year <- 2002


boot.position.2002 <- boot.position.2002[,c(1,2,3,nsims+4,nsims+5,4:(nsims+3))]
boot.position.2002$partyid<-as.vector(boot.position.2002$partyid)
boot.position.2002$partyid[boot.position.2002$party_na=="FN"]<-610 # fix FN party id

#head(boot.position.2002)

########################
# EU Position 2006 data
########################


dta2006partylabs<-unique(dta2006[,c("party","party_id")])

boot.position.2006 <- bootexperts(dim=dta2006$Q1,paste(dta2006$country_id,dta2006$countryname,dta2006$party_id,sep=","),nsims=nsims,mode=F)
#head(boot.position.2006)

boot.position.2006 <- cbind(str_split_fixed(as.character(rownames(boot.position.2006)),",",3),boot.position.2006)

names(boot.position.2006)

colnames(boot.position.2006)[1:3]<-c("country","countryname","partyid")
#head(boot.position.2006)

boot.position.2006 <- merge(boot.position.2006,dta2006partylabs,
	by.x="partyid",
	by.y="party_id",
	all.y=T)

boot.position.2006$year <- 2006


boot.position.2006 <- boot.position.2006[,c(1,2,3,nsims+4,nsims+5,4:(nsims+3))]


#head(boot.position.2006)


########################
# EU Position 2010 data
########################


dta2010partylabs<-unique(dta2010[,c("party_name","party_id")])


boot.position.2010 <- bootexperts(dim=dta2010$position,paste(dta2010$country,dta2010$countryname,dta2010$party_id,sep=","),nsims=nsims,mode=F)
#head(boot.position.2010)

boot.position.2010 <- cbind(str_split_fixed(as.character(rownames(boot.position.2010)),",",3),boot.position.2010)

names(boot.position.2010)

colnames(boot.position.2010)[1:3]<-c("country","countryname","partyid")
#head(boot.position.2010)

boot.position.2010 <- merge(boot.position.2010,dta2010partylabs,
	by.x="partyid",
	by.y="party_id",
	all.y=T)

boot.position.2010$year <- 2010


boot.position.2010 <- boot.position.2010[,c(1,2,3,nsims+4,nsims+5,4:(nsims+3))]



###### 
# Combine different years into one file
######

names(boot.position.1999)[4] <- "party_name"
names(boot.position.2002)[4] <- "party_name"
names(boot.position.2006)[4] <- "party_name"
names(boot.position.2010)[4] <- "party_name"

final <- rbind(boot.position.1999, boot.position.2002, boot.position.2006, boot.position.2010)

names(final)

#head(final)

# sort
final <- final[order(final$partyid,final$partyid),] 
#head(final)

final <- final[final$countryname!="NA",]

dim(final)
# Merge with trend file

chestrend<-read.dta("1999-2010_CHES_dataset_means.dta", warn.missing.labels = F)
dim(chestrend)

chestrend <- merge(chestrend,final,
	by.x=c("party_id","year"),by.y=c("partyid","year"),all.x=TRUE)

chestrend <- chestrend[!is.na(chestrend$V1),]

final$partyid<-as.numeric(final$partyid)

save(final,file="CHES_Bootstrap_1999_2010_medians.Rdata")



